async function* foo() {
    yield 1;
    yield 2;
  }
  
  (async function() {
    for await (const num of foo()) {
      console.log(num);
      // Expected output: 1
  
      break; // Closes iterator, triggers return
    }
  })();
const object = { a: 1, b: 2, c: 3 };

for (const property in object) {
    console.log(`${property}: ${object[property]}`);
}
  
// Expected output:
// "a: 1"
  
const array1 = ['a', 'b', 'c'];

for (const element of array1) {
  console.log(element);
}

// Expected output: "a"
// Expected output: "b"
// Expected output: "c"